package com.tanquandan.askbackend.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

@Data
public class R<T> implements Serializable {
    // 状态码:1-成功；0-失败
    private Integer code;
    // 失败状态消息
    private String msg;
    // 携带数据
    private T data;
    // 动态数据
    private Map<String,Object> map = new HashMap();


    public static <T> R<T> success(T object){
        R r = new R();
        r.code = 1;
        r.data = object;
        return r;
    }

    public static <T> R<T> error(String msg){
        R r = new R();
        r.code = 0;
        r.msg = msg;
        return r;
    }


    public R<T> add(String key,Object value){
        map.put(key,value);
        return this; // 链式调用
    }

}
